package com.csaba.connector.bha.model;

import com.csaba.connector.bha.SimpleNodeHelper;
import com.csaba.connector.model.Customer;
import com.ind.simplenode.SimpleNode;

public class BHACustomer extends Customer
{
	private static final long serialVersionUID = 4807218182510573333L;

	public BHACustomer()
	{
		super();
		setBank(BHABank.getInstance());
	}

	public BHACustomer( final Customer customer, final SimpleNode properties )
	{
		this();

		setLoginId(customer.getLoginId());
		setPassword(customer.getPassword());

		setId(properties.getString("id"));
		setName(properties.getString("customerFullName"));

		SimpleNodeHelper.setProperty(this, properties, "birthPlace");
		SimpleNodeHelper.setProperty(this, properties, "birthDate");
		SimpleNodeHelper.setProperty(this, properties, "mothersName");
		SimpleNodeHelper.setProperty(this, properties, "addressCard");
		SimpleNodeHelper.setProperty(this, properties, "identityCard");
		SimpleNodeHelper.setProperty(this, properties, "country.citizenshipText");
		SimpleNodeHelper.setProperty(this, properties, "sex.text");
		SimpleNodeHelper.setProperty(this, properties, "street");
		SimpleNodeHelper.setProperty(this, properties, "city");
		SimpleNodeHelper.setProperty(this, properties, "zipCode");
		SimpleNodeHelper.setProperty(this, properties, "country.text");
		SimpleNodeHelper.setProperty(this, properties, "notificationMethod.text");
		SimpleNodeHelper.setProperty(this, properties, "notificationStreet");
		SimpleNodeHelper.setProperty(this, properties, "notificationCity");
		SimpleNodeHelper.setProperty(this, properties, "notificationZipCode");
		SimpleNodeHelper.setProperty(this, properties, "notificationCountryCode.text");
		SimpleNodeHelper.setProperty(this, properties, "email");
		SimpleNodeHelper.setProperty(this, properties, "email2");
		SimpleNodeHelper.setPhoneProperty(this, properties, "mobilNumber");
		SimpleNodeHelper.setPhoneProperty(this, properties, "mobilNumber2");
		SimpleNodeHelper.setPhoneProperty(this, properties, "phoneNumber");
		SimpleNodeHelper.setPhoneProperty(this, properties, "phoneNumber2");
		//SimpleNodeHelper.loadProperties(this, properties);
	}

	/**
		addressCard = ''
		birthDate = ''
		birthPlace = ''
		city = ''
		country.citizenshipText = ''
		country.text = ''
		street = ''
		zipCode = '' 
		customerFullName = ''
		email = ''
		email2 = ''
		identityCard = ''
		mobilNumber.country = ''
		mobilNumber.number = ''
		mobilNumber.region = ''
		mobilNumber2.country = ''
		mobilNumber2.number = ''
		mobilNumber2.region = ''
		mothersName = ''
		phoneNumber.country = ''
		phoneNumber.number = ''
		phoneNumber.region = ''
		phoneNumber2.country = ''
		phoneNumber2.number = ''
		phoneNumber2.region = ''
		notificationCity = ''
		notificationCountryCode.citizenshipText = ''
		notificationCountryCode.code = ''
		notificationCountryCode.text = ''
		notificationMethod.code = ''
		notificationMethod.text = ''
		notificationStreet = ''
		notificationZipCode = ''
		sex.code = ''
		sex.text = ''

	annuallyGrossIncome = ''
	authorizableFrom = ''
	carBuildingYear = ''
	cardDelivery.code = ''
	cardDelivery.text = ''
	child1BirthYear = ''
	child2BirthYear = ''
	child3BirthYear = ''
	child4BirthYear = ''
	codeWord = ''
	computer.code = ''
	computer.text = ''
	country.code = ''
	countryHUN.text = ''
	customerAnalysis.analysisCode = ''
	customerAnalysis.analysisText = ''
	customerAnalysis.subAnalysisCode = ''
	customerAnalysis.subAnalysisText = ''
	customerGroup.code = ''
	customerGroup.groupCodeBy5 = ''
	customerGroup.text = ''
		customerLocation = ''
	customerMnemonic = ''
	customerType.atso = ''
	customerType.code = ''
	customerType.text = ''
	defaultAccountShortName = ''
	defaultBranch.code = ''
	defaultBranch.text = ''
	defaultBranchNr = ''
	dependentsNumber = ''
	discountCustomer = ''
	domestic = ''
	firstName = ''
	firstStoreDate = ''
	houseSince = ''
	housingState.code = ''
	housingState.text = ''
	id = ''
	idCardExpiry = ''
	inactive.flag = ''
	inactive.text = ''
	internalComment = ''
	internet.code = ''
	internet.text = ''
	isCompany = ''
	ivrId = ''
	jobCaracter.code = ''
	jobCaracter.text = ''
	jobStatus.code = ''
	jobStatus.text = ''
	languageCode.code = ''
	languageCode.text = ''
	lastMaintainDate = ''
	lastName = ''
	lifeInsurance = ''
	maritalStatus.code = ''
	maritalStatus.text = ''
	missingData = ''
	monthlyNetIncome = ''
	monthlyRedemption = ''
	monthlyRegularTransferAmount = ''
	occupation.code = ''
	occupation.text = ''
	otherBank1.code = ''
	otherBank1.text = ''
	otherBank2.code = ''
	otherBank2.text = ''
	otherBank3.code = ''
	otherBank3.text = ''
	permanentCountryCode.citizenshipText = ''
	permanentCountryCode.code = ''
	permanentCountryCode.text = ''
	photoCopy = ''
	previousJobTime = ''
	qualification.code = ''
	qualification.text = ''
	realOwner = ''
	residence.code = ''
	residence.countryName = ''
	residence.text = ''
	responsibilityCode.code = ''
	responsibilityCode.text = ''
	sectorCode.code = ''
	sectorCode.text = ''
	specCustomerType.code = ''
	specCustomerType.text = ''
	specialCustomerType = ''
	taxIdentity = ''
	teaor = ''
	voluntaryPensionCasse = ''
	workSince = ''
	workplaceAddress = ''
	workplaceName = ''
	*/
}
